/* jwt解码验证token是否过期 */
const jwt = require('jsonwebtoken')
function authToken() {
    return async function (ctx, next) {
        if (ctx.url == '/login' || ctx.request.method == 'GET') { // 登录页面不验证token
            await next()
        } else {
            const token = ctx.request.header['g-token']
            if (token) {
                try {
                    const { userName, ita, exp } = jwt.verify(token, 'secret')
                    await next()
                } catch (error) {
                    ctx.status = 401 // 过期
                    ctx.body = {
                        msg: 'token过期'
                    }
                }
            } else {
                ctx.status = 402
            }
        }
    }
}
module.exports = authToken